package com.team2.insulatingtools.modular.tools.service;

import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import com.baomidou.mybatisplus.extension.service.IService;
import com.team2.insulatingtools.modular.tools.dto.ToolsQuotaDetailDto;
import com.team2.insulatingtools.modular.tools.entity.Quota;
import com.team2.insulatingtools.modular.tools.pojo.request.QuotaRequest;

import java.util.List;

/**
 * 定额  服务类
 *
 * @author team2
 * @date 2023/04/03 09:48
 */
public interface QuotaService extends IService<Quota> {

    /**
     * 获取当前登录用户可操作的班组
     */
    ResponseData selOptionalOrg();


    /**
     * 获取班组可添加的绝缘工具类型
     */
    ResponseData selOptionalTool(String org_id);

	/**
     * 新增
     *
     * @param quotaRequest 请求参数
     * @author team2
     * @date 2023/04/03 09:48
     */
    ResponseData add(QuotaRequest quotaRequest);



    /**
     * 获取所选班组已有的定额信息
     * @return
     */
    ResponseData selTeamQuota(String org_id);


    /**
     * 查询全部的定额信息
     * @return
     */
    ResponseData selAllQuota();


	/**
     * 删除定额信息
     *
     * @param id 请求参数
     * @author team2
     * @date 2023/04/03 09:48
     */
    ResponseData del(int id);


    /**
     * 查询定额信息的历史记录
     * @return
     */
    ResponseData selQuotaLog(String quotaId);


    /**
     * 获取定额更改-删除页面列表
     * @param orgId
     * @param quotaId
     * @return
     */
    List<ToolsQuotaDetailDto> selectToolQuotaList(Long orgId,Integer quotaId);

    /**
     * 批量删除工具信息
     * @param quotaRequest
     */
    void batchDeleteTools(QuotaRequest quotaRequest);
    /**
     * 修改定额信息-增加定额
     * @param quotaRequest
     */
    void addQuota(QuotaRequest quotaRequest);

    /**
     * 查询车间或班组的定额信息
     * @param orgId
     * @return
     */
    ResponseData selWorkshopOrTeamQuota(String orgId);




}













